package org.nuonuo.sdk.model.base;

/**
 * @Version 1.0
 * @Author az
 * @Date 2024-04-09 13:43:51
 * @ClassName InvoiceItem
 * @Description 发票明细集合
 */
public class InvoiceItem {

    /**
     * 商品名称(项目名称)
     */
    private String itemName;

    /**
     * 简称
     */
    private String itemCodeAbb;

    /**
     * 单位
     */
    private String itemUnit;

    /**
     * 单价（isIncludeTax=true，是含税单价；isIncludeTax=false，是不含税单价）
     */
    private String itemPrice;

    /**
     * 税率，注：纸票清单红票存在为null的情况
     */
    private String itemTaxRate;

    /**
     * 数量
     */
    private String itemNum;

    /**
     * 金额（isIncludeTax=true，是含税金额；isIncludeTax=false，是不含税金额）
     */
    private String itemAmount;

    /**
     * 税额
     */
    private String itemTaxAmount;

    /**
     * 规格型号
     */
    private String itemSpec;

    /**
     * 商品编码
     */
    private String itemCode;

    /**
     * 自行编码
     */
    private String itemSelfCode;

    /**
     * 含税标识 true：含税 false：不含税
     */
    private String isIncludeTax;

    /**
     * 发票行性质0, 正常行;1,折扣行;2,被扣行
     */
    private String invoiceLineProperty;

    /**
     * 零税率标识:空：非零税率，1：免税，2：不征税，3：普通零税率；（数电票时为空）
     */
    private String zeroRateFlag;

    /**
     * 优惠政策名称（增值税特殊管理）；数电票时为空
     */
    private String favouredPolicyName;

    /**
     * 优惠政策标识:0：不使用;1：使用；（数电票时： 01：简易征收 02：稀土产品 03：免税 04：不征税 05：先征后退 06：100%先征后退 07：50%先征后退 08：按3%简易征收 09：按5%简易征收 10：按5%简易征收减按1.5%计征 11：即征即退30% 12：即征即退50% 13：即征即退70% 14：即征即退100% 15：超税负3%即征即退 16：超税负8%即征即退 17：超税负12%即征即退 18：超税负6%即征即退）
     */
    private String favouredPolicyFlag;

    /**
     * 扣除额，小数点后两位。差额票时有值
     */
    private String deduction;

    private String itemSumAmount;
    private String immediateTaxReturnType;
    private String itemIndex;

    public String getItemName() {
        return itemName;
    }

    public void setItemName(String itemName) {
        this.itemName = itemName;
    }

    public String getItemCodeAbb() {
        return itemCodeAbb;
    }

    public void setItemCodeAbb(String itemCodeAbb) {
        this.itemCodeAbb = itemCodeAbb;
    }

    public String getItemUnit() {
        return itemUnit;
    }

    public void setItemUnit(String itemUnit) {
        this.itemUnit = itemUnit;
    }

    public String getItemPrice() {
        return itemPrice;
    }

    public void setItemPrice(String itemPrice) {
        this.itemPrice = itemPrice;
    }

    public String getItemTaxRate() {
        return itemTaxRate;
    }

    public void setItemTaxRate(String itemTaxRate) {
        this.itemTaxRate = itemTaxRate;
    }

    public String getItemNum() {
        return itemNum;
    }

    public void setItemNum(String itemNum) {
        this.itemNum = itemNum;
    }

    public String getItemAmount() {
        return itemAmount;
    }

    public void setItemAmount(String itemAmount) {
        this.itemAmount = itemAmount;
    }

    public String getItemTaxAmount() {
        return itemTaxAmount;
    }

    public void setItemTaxAmount(String itemTaxAmount) {
        this.itemTaxAmount = itemTaxAmount;
    }

    public String getItemSpec() {
        return itemSpec;
    }

    public void setItemSpec(String itemSpec) {
        this.itemSpec = itemSpec;
    }

    public String getItemCode() {
        return itemCode;
    }

    public void setItemCode(String itemCode) {
        this.itemCode = itemCode;
    }

    public String getItemSelfCode() {
        return itemSelfCode;
    }

    public void setItemSelfCode(String itemSelfCode) {
        this.itemSelfCode = itemSelfCode;
    }

    public String getIsIncludeTax() {
        return isIncludeTax;
    }

    public void setIsIncludeTax(String isIncludeTax) {
        this.isIncludeTax = isIncludeTax;
    }

    public String getInvoiceLineProperty() {
        return invoiceLineProperty;
    }

    public void setInvoiceLineProperty(String invoiceLineProperty) {
        this.invoiceLineProperty = invoiceLineProperty;
    }

    public String getZeroRateFlag() {
        return zeroRateFlag;
    }

    public void setZeroRateFlag(String zeroRateFlag) {
        this.zeroRateFlag = zeroRateFlag;
    }

    public String getFavouredPolicyName() {
        return favouredPolicyName;
    }

    public void setFavouredPolicyName(String favouredPolicyName) {
        this.favouredPolicyName = favouredPolicyName;
    }

    public String getFavouredPolicyFlag() {
        return favouredPolicyFlag;
    }

    public void setFavouredPolicyFlag(String favouredPolicyFlag) {
        this.favouredPolicyFlag = favouredPolicyFlag;
    }

    public String getDeduction() {
        return deduction;
    }

    public void setDeduction(String deduction) {
        this.deduction = deduction;
    }

    public String getItemSumAmount() {
        return itemSumAmount;
    }

    public void setItemSumAmount(String itemSumAmount) {
        this.itemSumAmount = itemSumAmount;
    }

    public String getImmediateTaxReturnType() {
        return immediateTaxReturnType;
    }

    public void setImmediateTaxReturnType(String immediateTaxReturnType) {
        this.immediateTaxReturnType = immediateTaxReturnType;
    }

    public String getItemIndex() {
        return itemIndex;
    }

    public void setItemIndex(String itemIndex) {
        this.itemIndex = itemIndex;
    }
}
